﻿using Newtonsoft.Json.Linq;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/*********************************************************
 * 命名空间 Simple.Utils.JObject
 * 接口名称  ISimpleJobject
 * 开发人员：zdm
 * 创建时间：2023/12/12 13:51:44
 * 描述说明：
 * 更改历史：
 * 
 * *******************************************************/
namespace Simple.Tools
{
	/// <summary>
	/// 
	/// </summary>
	public interface ISimpleJobject
	{
		/// <summary>
		/// 
		/// </summary>
		/// <typeparam name="T"></typeparam>
		/// <param name="json"></param>
		/// <param name="names"></param>
		/// <returns></returns>
		public T GetValue<T>(string json, params string[] names);
		/// <summary>
		/// 
		/// </summary>
		/// <typeparam name="T"></typeparam>
		/// <param name="jObject"></param>
		/// <param name="names"></param>
		/// <returns></returns>
		public T GetValue<T>(JObject jObject, params string[] names);
		/// <summary>
		/// 
		/// </summary>
		/// <param name="jObject"></param>
		/// <param name="type"></param>
		/// <param name="names"></param>
		/// <returns></returns>
		public object GetValue(JObject jObject, Type type, params string[] names);
	}
}
